;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;File name   : 44b.inc
;;Description : constants for ARM cpu s3c44b0x.
;;            : 
;;            : 
;;            : 
;;            :
;;Auther      : sunxinqiu
;;History     :
;;  2006-3-15   first release.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; ADS compiler & linker constants.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    IMPORT  |Image$$RO$$Limit|  ;End of ROM code (=start of ROM data)
    IMPORT  |Image$$RW$$Base|   ;Base of RAM to initialise
    IMPORT  |Image$$ZI$$Base|   ;Base and limit of area
    IMPORT  |Image$$ZI$$Limit|  ;to zero initialise

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;  ARM CPU common definations.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
USER_MODE    EQU    0x10
FIQ_MODE     EQU    0x11
IRQ_MODE     EQU    0x12
SVC_MODE     EQU    0x13
ABORT_MODE   EQU    0x17
UNDEF_MODE   EQU    0x1b
MODE_MASK    EQU    0x1f

NO_INT       EQU    0xc0
FIQ_DISABLED EQU    0x40
IRQ_DISABLED EQU    0x80

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Watchdog timer registers
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
rWTCON      EQU 0x01d30000
rWTDAT      EQU 0x01d30004
rWTCNT      EQU 0x01d30008

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Interrupt controller registers.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
rINTCON     EQU 0x01e00000
rINTPND     EQU 0x01e00004
rINTMOD     EQU 0x01e00008
rINTMSK     EQU 0x01e0000c
rI_PSLV     EQU 0x01e00010
rI_PMST     EQU 0x01e00014
rI_CSLV     EQU 0x01e00018
rI_CMST     EQU 0x01e0001c
rI_ISPR     EQU 0x01e00020
rI_ISPC     EQU 0x01e00024
rF_ISPR     EQU 0x01e00038
rF_ISPC     EQU 0x01e0003c

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Clock & Powrer management registers
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
rPLLCON     EQU 0x01d80000
rCLKCON     EQU 0x01d80004
rCLKSLOW    EQU 0x01d80008
rLOCKTIME   EQU 0x01d8000c

Fin         EQU 10000000
Fout        EQU 32000000
M_DIV       EQU 24
P_DIV       EQU 3
S_DIV       EQU 1

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; CPU interrupt sources for S3C44b0x
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
BIT_ADC		    EQU (0x1)
BIT_RTC		    EQU (0x1<<1)
BIT_UTXD1	    EQU (0x1<<2)
BIT_UTXD0	    EQU (0x1<<3)
BIT_SIO		    EQU (0x1<<4)
BIT_IIC		    EQU (0x1<<5)
BIT_URXD1	    EQU (0x1<<6)
BIT_URXD0	    EQU (0x1<<7)
BIT_TIMER5	    EQU (0x1<<8)
BIT_TIMER4	    EQU (0x1<<9)
BIT_TIMER3	    EQU (0x1<<10)
BIT_TIMER2	    EQU (0x1<<11)
BIT_TIMER1	    EQU (0x1<<12)
BIT_TIMER0	    EQU (0x1<<13)
BIT_UERR01	    EQU (0x1<<14)
BIT_WDT		    EQU (0x1<<15)
BIT_BDMA1	    EQU (0x1<<16)
BIT_BDMA0	    EQU (0x1<<17)
BIT_ZDMA1	    EQU (0x1<<18)
BIT_ZDMA0	    EQU (0x1<<19)
BIT_TICK	    EQU (0x1<<20)
BIT_EINT4567	EQU (0x1<<21)
BIT_EINT3	    EQU (0x1<<22)
BIT_EINT2	    EQU (0x1<<23)
BIT_EINT1	    EQU (0x1<<24)
BIT_EINT0	    EQU (0x1<<25)

    END
